Directory servers and directory services are often utilized in the context of a distributed computing system that includes multiple users and computing resources. A directory server or directory service is often used to store hierarchal data regarding an organization, its users, and its computing resources. Data of a directory server or directory service is often defined according to a directory schema that specifies facets, attributes, constraints, indexes, objects, and more. Directories, in some cases, store millions of application-specific objects with multiple relationships and schemas.
Accordingly, applying changes to an existing directory schema such as upgrading a directory schema to support additional features, deprecate old features, etc. presents challenges to an organization or a service of a computing resource service provider hosting directory-related services to safely apply the update without breaking existing features. It is often difficult for system administrator and directory administrators to know, a priori, whether an update to a directory schema will cause breaking changes that lead to server downtime which may adversely impact the operation of an organization.